//个人项目，需要自己定义相关宏
#include "unit_test.h"
#include <stdint.h>


#define L_FATAL(x, args...) UNIT_ERROR(x, ##args)
#define L_ERROR(x, args...) UNIT_ERROR(x, ##args)
#define L_WARN(x, args...) UNIT_INFO(x, ##args)
#define L_INFO(x, args...) UNIT_INFO(x, ##args)
#define L_DEBUG(x, args...) UNIT_INFO(x, ##args)
#define L_TRACE(x, args...) UNIT_INFO(x, ##args)


#define L_ERROR_COND(x, ...) L_ERROR(x)

#define L_ASSERT(cond, ...)\
	do{\
	if(!(cond)){\
	L_ERROR("assert error, condition \[" #cond "]. "); \
	*(int *)(nullptr) = 1;\
	}	\
	}while(0);



//简化if语句写法,让代码简洁，一但习惯，提高编写效率和浏览代码效率。
#define L_COND(cond, ret, ...)\
	do{\
	if(!(cond)){\
	L_ERROR_COND("condition fail \[" #cond "]. ", ##__VA_ARGS__); \
	return ret;\
	}	\
	}while(0);

#define L_COND_F(cond, args...)	L_COND(cond, false, ##args)
#define L_COND_V(cond, args...)	L_COND(cond, void(), ##args)


